package com.ruoyi.system.Fdongbei.mapper;

import com.ruoyi.system.Fdongbei.domain.TbGuozhong;
import com.ruoyi.system.Fdongbei.domain.TbMerge;
import com.ruoyi.system.Fdongbei.domain.dibang.GuozhongDo;
import com.ruoyi.system.Fdongbei.domain.dibang.TbMMGuozhong;
import com.ruoyi.system.Fdongbei.domain.vo.reqvo.CarInfoReqVo;
import com.ruoyi.system.Fdongbei.domain.vo.resvo.CarInfoVo;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;


/**
 * 多交货单Mapper接口
 * 
 * @author ruoyi
 * @date 2025-02-07
 */
public interface TbMergeMapper 
{
    /**
     * 查询多交货单
     * 
     * @param czbh 多交货单主键
     * @return 多交货单
     */
    public TbMerge selectTbMergeByCzbh(String czbh);

    /**
     * 查询多交货单列表
     * 
     * @param tbMerge 多交货单
     * @return 多交货单集合
     */
    public List<TbMerge> selectTbMergeList(TbMerge tbMerge);

    /**
     * 新增多交货单
     * 
     * @param tbMerge 多交货单
     * @return 结果
     */
    public int insertTbMerge(TbMerge tbMerge);

    /**
     * 修改多交货单
     * 
     * @param tbMerge 多交货单
     * @return 结果
     */
    public int updateTbMerge(TbMerge tbMerge);

    /**
     * 增加打印次数
     *
     * @param czbh 多交货单
     * @return 结果
     */
    public int updateTbMergeDdbdcs(String czbh);

    /**
     * 删除多交货单
     * 
     * @param czbh 多交货单主键
     * @return 结果
     */
    public int deleteTbMergeByCzbh(String czbh);

    /**
     * 批量删除多交货单
     * 
     * @param czbhs 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteTbMergeByCzbhs(String[] czbhs);


    /**
     * 获取 YLF 类型数据
     * @param tbGuozhong
     * @return
     */
    List<TbMMGuozhong> getCornCarShInfoGuozhong(TbMMGuozhong tbGuozhong);

    @Select(" select Max(right(czbh,2)) AS string from tb_merge where fksj >= #{stime} and fksj <= #{otime} ")
    public String selectMaxCzbh(@Param("stime") String stime, @Param("otime") String otime);
}
